#!/bin/bash

# 设置节点范围（根据需求修改）与工作路径
start_node=315
end_node=317
work_dir=/brain/zuoxinian/Data/CCNPIBP2

# 定义 anatfreesurfer.sh 的路径
anat_script="${work_dir}/anatfreesurfer.sh"

# 定义输出日志路径
log_dir="${work_dir}/logs"
err_dir="${log_dir}/err_info"
script_dir="${log_dir}/scripts"

# 创建日志目录（如果不存在）
mkdir -p "$log_dir" "$err_dir" "$script_dir"

# 循环生成作业脚本并提交
for nodes in $(seq $start_node $end_node); do
    job_name="CIBP_${nodes}"
    pbs_file="${script_dir}/${job_name}.pbs"

    # 生成 PBS 作业脚本
    cat <<EOT > "$pbs_file"
#!/bin/bash
#PBS -N ${job_name}
#PBS -l nodes=1:ppn=4
#PBS -q long
#PBS -V
#PBS -e ${err_dir}/${job_name}.err
#PBS -o ${log_dir}/${job_name}.out

# 切换到作业提交目录
if [ -n "\$PBS_O_WORKDIR" ]; then
    cd \$PBS_O_WORKDIR || { echo "Error: Could not change to \$PBS_O_WORKDIR"; exit 1; }
else
    echo "Error: PBS_O_WORKDIR is not set."
    exit 1
fi

# 执行 anatfreesurfer.sh 脚本
bash ${anat_script} ${nodes}
EOT

    # 提交作业
    qsub "$pbs_file"
    echo "Submitted job: ${job_name} using script: ${pbs_file}"
    
    #delay 5 seconds
    sleep 5
done

